//#include <algorithm>
//class Count {
//
//public:
//    static int count;
//    static int Sum(int& x)
//    {
//
//        return x++;
//    }
//};
//
//int Count::count = 1;
//
//class Solution {
//    friend class Count;
//
//public:
//    int Sum_Solution(int n) {
//        int sum = 0;
//        for (int i = 1; i <= n; i++)
//        {
//            sum += Count::Sum(Count::count);
//        }
//        return sum;
//    }
//};


#include <iostream>
using namespace std;

class A
{
public:
	~A(){}
};
class B
{
public:
	~B() {}
}; 
class C
{
public:
	~C() {}
}; 
class D
{
public:
	~D() {}
};

C c;
//int main()
//{
//	A* pa = new A;
//	B b;
//	static D d;
//	delete pa;
//
//	return 1;
//}


//int main()
//{
//	int* p = new int[4];
//	delete p;
//	return 0;
//}


class Solution {
public:
    vector<vector<int>> generate(int numRows) {
        vector<vector<int>> vv(numRows);
        for (size_t i = 0; i < numRows; i++)
        {
            vv[i].resize(i + 1);
        }
        for (size_t i = 0; i < numRows; i++)
        {
            vv[i].front() = vv[i].back() = 1;
        }

        for (size_t i = 0; i < numRows; i++)
        {
            for (size_t j = 0; j <= i; j++)
            {
                if (vv[i][j] == 0)
                {
                    vv[i][j] = vv[i - 1][j - 1] + vv[i - 1][j];
                }
            }
        }
        return vv;

    }
};